Various mechanisms exist for supporting multiple clients on a single computing device. Some legacy methods on main frames included timesharing of clients, where only one process was actually running at a time, but each client's process received a share of available processing time. Other methods for multiple clients to operate on a single computing device include using virtual machines with a virtual machine monitor to control devices and active processes.
An existing model for sharing a computing device among many users is known as the Internet Café model. In this business method, a number of computing devices are co-located in a café or other business establishment. A user pays for use, often limited by time, and logs on to the computing device. When the user is finished, the computing device may be rebooted in preparation for another user to log on and use the resource. Rebooting, however, is inefficient as it requires significant downtime of the resource, over time. As computing resources on a single platform increase, for instance, with multi-core platforms and faster processors, single user platforms will tend to be underutilized in this type of environment.
The existing Internet Café model entails having a single machine/user. Single user platforms incur manageability costs and difficulty in scaling, for instance, to provide a pedestal personal computer (PC) in front of each user. The cost of the equipment is also another issue. Security of the hardware may be a problem as well, since users are typically co-located with the processor and peripherals used.